很多人把防火牆想成「黑名單機器」。其實 L3/L4 防火牆是看封包基本欄位(IP、Port、Protocol)與連線狀態(有沒有一條既有連線)做決定的「交通警察」。做對幾條規則,就能先擋掉一大半風險。
- Layer 3(網路層):看 來源/目的 IP、協定(TCP/UDP/ICMP)。
- Layer 4(傳輸層):再看 來源/目的 Port、TCP flags(如 SYN)。
**- Stateless vs Stateful **
- Stateless(無狀態):只看單包規則,速度快、邏輯簡單。
- Stateful(狀態檢查):維護連線表,只放行屬於已建立連線的回應流量,誤擋率低、較安全。
多數現代「網路型防火牆」其實就是 L3/L4 的 stateful inspection:在 3/4 層做連線感知的過濾。
因為你不可能把世界上所有壞東西都逐一列出來擋;與其寫無窮盡的阻擋規則,不如先全部拒絕,再只允許必要(正向模型)。這是很多防火牆與社群文件的最佳實務。
小提醒:寫規則要先精後廣(Specific over General),避免被下面的大規則「吃掉」。
一句話:L3/L4 控管誰能來、能走哪條路;WAF 看你在路上「說了什麼」。
1.只關入站,出站全放:惡意程式「打出去」一樣能通;外洩與 C2 連線沒人攔。
2.規則順序亂:廣規則在上、細規則在下 → 細規則永遠不會被匹配。
3.把防火牆當萬能:WAF/補丁/身份與權限不到位,L3/L4 擋不了 L7 的 payload。
4.Drop/Deny 不分:有時「silently drop」比「明確拒絕」更不會暴露你在線(情境依需求)。
專有名詞多也不用被淹沒,抓住三件事就夠:
1.門分兩側:入站守住服務、出站別全放。
2.預設拒絕:先全關,再只開必要(白名單思維)。
3.先精後廣:細規則在上方,最後用一條 deny all 收尾。
先做最有感的三步:在系統防火牆關掉不需要的入站、把常用出站列成白名單、補上一條總攔截規則。做到這裡,你的基線防護已經明顯上來了!
下集預告:WAF(L7)多看了什麼?
我們會把 L3/L4 防火牆和 WAF 放在一起對照:一個管「誰從哪裡進、走哪個門」,另一個看「HTTP 裡到底做了什麼」。常見誤區、規則怎麼挑、什麼情境該上 WAF,一篇講清楚。